﻿using System;

namespace SharpSqlAnalyzer.nodes.hive
{
	// Token: 0x0200042C RID: 1068
	public class THiveVariable : TParseTreeNode
	{
		// Token: 0x17000981 RID: 2433
		// (get) Token: 0x0600293B RID: 10555 RVA: 0x0033D598 File Offset: 0x0033B798
		// (set) Token: 0x0600293C RID: 10556 RVA: 0x0033D5A0 File Offset: 0x0033B7A0
		public virtual THiveVariable NestedVar
		{
			get
			{
				return this.nestedVar;
			}
			set
			{
				this.nestedVar = value;
			}
		}

		// Token: 0x17000982 RID: 2434
		// (get) Token: 0x0600293D RID: 10557 RVA: 0x0033D5A9 File Offset: 0x0033B7A9
		// (set) Token: 0x0600293E RID: 10558 RVA: 0x0033D5B1 File Offset: 0x0033B7B1
		public virtual TObjectName VarName
		{
			get
			{
				return this.varName;
			}
			set
			{
				this.varName = value;
			}
		}

		// Token: 0x17000983 RID: 2435
		// (get) Token: 0x0600293F RID: 10559 RVA: 0x0033D5BA File Offset: 0x0033B7BA
		// (set) Token: 0x06002940 RID: 10560 RVA: 0x0033D5C2 File Offset: 0x0033B7C2
		public virtual TObjectName VarProperty
		{
			get
			{
				return this.varProperty;
			}
			set
			{
				this.varProperty = value;
			}
		}

		// Token: 0x06002941 RID: 10561 RVA: 0x0033D5CB File Offset: 0x0033B7CB
		public override void init(object arg1, object arg2)
		{
			this.varName = (TObjectName)arg1;
			if (arg2 is TObjectName)
			{
				this.varProperty = (TObjectName)arg2;
				return;
			}
			if (arg2 is THiveVariable)
			{
				this.nestedVar = (THiveVariable)arg2;
			}
		}

		// Token: 0x06002942 RID: 10562 RVA: 0x0033D602 File Offset: 0x0033B802
		public override void accept(TParseTreeVisitor v)
		{
			v.preVisit(this);
			v.postVisit(this);
		}

		// Token: 0x06002943 RID: 10563 RVA: 0x0033D612 File Offset: 0x0033B812
		public override void acceptChildren(TParseTreeVisitor v)
		{
			v.preVisit(this);
			v.postVisit(this);
		}

		// Token: 0x04001E9F RID: 7839
		private TObjectName varName;

		// Token: 0x04001EA0 RID: 7840
		private TObjectName varProperty;

		// Token: 0x04001EA1 RID: 7841
		private THiveVariable nestedVar;
	}
}
